#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include "algo1.h"





int indice_min1(int* t,int n){
  int indice_min;
  int min1;
  if(t[0]==0){
    min1=t[1];
    indice_min=1;
  }
  else{
    min1=t[0];
    indice_min=0;
  }
  int i;
  for(i=1;i<n;i++)    
    if(t[i]<min1&&t[i]!=0){
      indice_min=i;
      min1=t[i];
    }
  return indice_min;  
}

int indice_min2(int*t,int n,int indice_min){
  int indice_min_2;
  int min2;
  if((t[0]==0&&indice_min==1)||(t[1]==0&&indice_min==0)){
    min2=t[2];
    indice_min_2=2;
  }
  else if(t[0]==0||indice_min==0){
    min2=t[1];
    indice_min_2=1;
  }
  else{
    min2=t[0];
    indice_min_2=0;
  }
  int i;
  for(i=1;i<n;i++)    
    if(t[i]<min2&&t[i]!=0&&i!=indice_min){
      indice_min_2=i;
      min2=t[i];
    }
  return indice_min_2;  
}


void creer_liens1(int** liens,int** distances,int nb_terminaux){
  int i;
  int imin1;
  int imin2;
  for(i=0;i<nb_terminaux;i++){
    imin1=indice_min1(distances[i],nb_terminaux);
    imin2=indice_min2(distances[i],nb_terminaux,imin1);
    liens[i][imin1]=1;
    liens[imin1][i]=1;
    liens[i][imin2]=1;
    liens[imin2][i]=1;
  }

}
